一、XLinkUser
用户信息类,SDK 中用于缓存登录后的用户信息的实体类,该类也可用于提供 SDK 初始化用户信息,用于快捷登录
- 以下方法说明中明确提供不推荐使用的方法,即为不建议开发者调用或者是开发者不应该进行任何数据修改。
- 以下文档中未提及的方法均属于不推荐使用的方法
二、Reference
以下为此类中关联的Class及相关说明
类名 | 类型 | 说明 |
---|---|---|
XLinkAuthProvider | 接口 | Restful 接口请求时获取配置参数接口 |
XLinkUserManager | 实体类 | 用户信息管理类,详情请参考API-XLinkUserManager |
三、Field
以下为此类中的常用字段及说明。
3.1、Attributes
由于此类包含的属性较多,不一一罗列其属性的getter/setter
方法,以下字段都支持对应的方法,方法列表中不再赘述。大部分情况下,以下属性为仅读属性
字段名 | 字段类型 | getter支持返回null | 说明 |
---|---|---|---|
accessToken | String | 是 | http 接口请求使用的 token,有效时默认为2小时,用户信息有效时不可能返回 null |
refreshToken | String | 是 | token 的刷新凭证,此凭证不能直接用于 http 接口的请求,但是有效期较长14天,当 token 过期时可通过此凭证进行刷新获取新的可用的 token,用户信息有效是不可能返回 null |
authString | String | 是 | CM 服务器登录的有效凭证,用户信息有效时不可能返回 null |
expiredTime | int | - | token 的有效时间,单位秒 |
uid | int | - | 用户唯一ID |
四、Methods
以下方法为开发过程常用的方法说明,参数说明及返回值说明。此处仅提供了推荐开发者使用及可能需要使用的方法,部分未列出方法请根据实际情况评估调用。
由于 XLinkUser 比较简单,相应的方法与上述的字段相对应,此处不再赘述
4.1、toJson
@NotNull
public String toJson()
- 方法说明:
将数据端点序列化为 json 字符串数据
- 返回值:String,json 字符串;序列化得到的 json 数据,不为 null
五、Relevant Class
以下为此类中的关联类或内部类
5.1、XLinkAuthProvider
Restful 接口请求时获取配置参数接口,在 Restful 配置中,将提供一个实现此接口的对象,当 Restful 请求需要某些权限性的参数时,即可从此接口对象中获取,通常情况下获取的都是用户请求权限参数
String getAccessToken();
- 方法说明:获取接口请求时需要的 token 凭证
String getRefreshToken();
- 方法说明:获取刷新 token 时的凭证。当请求的凭证不存在或者无效时,则获取当前用户的刷新凭证,使用刷新凭证刷新 token,更新有效时间及 token 信息以提供用户权限接口使用;当无刷新凭证或者是凭证过期时,则将返回 token 过期的错误
void setAccessToken(String token);
- 方法说明:保存用户请求权限 token,此方法一般为在使用刷新凭证获取到新的 token 之后回调此方法缓存新的 token
void setRefreshToken(String token);
- 方法说明:保存用户的刷新作证
void onReauthorization();
- 方法说明:需要重新登录的回调,当刷新凭证不存在或者是无效时,无法获取新的 token 用于请求接口时,则会回调此接口,通知用户需要进行再次登录
六、Addendum
用户信息对象的 json 序列化结构:
{
"access_token": "xxx",
"refresh_token": "xxx",
"user_id": "10000",
"expire_in": "0",
"authorize": "xxxx"
}
七、更新日志
日期 | 更新内容 |
---|---|
2018-08-26 | 初稿,自 X-MQTT SDK v6.2版本起 |